using System;

namespace InfiniteGeek.Util
{
	/// <summary>Provides a replacement key to AutoConfig instead of the property name.</summary>
	[AttributeUsage(AttributeTargets.Property)]
	public sealed class AutoConfigKeyAttribute : Attribute
	{
		/// <summary>The configuration key to the value that should be loaded into the decorated property.</summary>
		public String Key { get; private set; }

		/// <summary>Initializes a new instance of <see cref="AutoConfigKeyAttribute"/>.</summary>
		/// <param name="key">A string that specifies the configuration key associated with the decorated property. </param>
		public AutoConfigKeyAttribute(String key) { Key = key; }
	}
}